//
// Pinhole.hpp for  in /home/herpec_j/Dropbox/Projets/raytracer-2016/Includes/Cameras/
//
// Made by Jonathan
// Login   <ledey_l@epitech.net>
//
// Started on  Tue Sep 24 10:16:32 2013 Jonathan
// Last update Thu Sep 26 00:35:07 2013 Jonathan
//

#ifndef			PINHOLE_HPP_
# define		PINHOLE_HPP_

# include		"Cameras/Camera.hpp"

namespace		Cameras
{
  class			Pinhole : public Camera
  {
  private:
    long double		mViewDistance;
    long double		mZoom;

  protected:

  public:
    Pinhole(void);
    Pinhole(Pinhole const &rOther);
    Pinhole		&operator=(Pinhole const &rOther);
    ~Pinhole(void);

    virtual Pinhole	*Clone(void) const;
    void		SetViewDistance(long double rViewDistance);
    void		SetZoom(long double rZoom);
    Maths::Vector	GetDirection(Maths::Point const &rPoint) const;
    virtual void	RenderScene(void);
  };
};

#endif			/* PINHOLE_HPP_ */
